/**
* Import library that is needed for the game
*/
import java.awt.Point;

/**
* Player class which represents a player
* 
* @author Hung Lac
* CS 2340 - Fall 2012
* 
 * @version $Revision: 1.0 $

*/
@SuppressWarnings("serial")
public class Player implements java.io.Serializable {

	/**
	 * Field name.
	 */
	private String name;

	/**
	 * Field credits.
	 */
	private int credits = 1000;

	/**
	 * Field health.
	 */
	private static final int HEALTH = 100;

	/**
	 * Field pil.
	 */
	/**
	 * Field figh.
	 */
	/**
	 * Field tra.
	 */
	/**
	 * Field eng.
	 */
	private int eng, tra, figh, pil;

	/**
	 * Field location.
	 */
	private Point location;

	/**
	 * Field travel.
	 */
	private Point travel;

	/**
	 * Method getTravel.
	 * @return Point
	 */
	public Point getTravel() {
		return travel;
	}

	/**
	 * Helper method that sets the point of the planet to travel to
	 * 
	 * @param travel
	 *            The location of the target planet
	 */
	public void setTravel(Point travel) {
		this.travel = travel;
	}

	/**
	 * Constructor for Player class
	 * 
	 */
	public Player() {
		travel = new Point(-1, -1);
	}

	/**
	 * Returns player name
	 * 
	
	 * @return name */
	public String getName() {
		return name;
	}

	/**
	 * returns player's credit
	 * 
	
	 * @return credits */
	public int getCredits() {
		return credits;
	}

	/**
	 * returns player health
	 * 
	
	 * @return health */
	public int getHealth() {
		return HEALTH;
	}

	/**
	 * returns player's Engineer skill point
	 * 
	
	 * @return eng */
	public int getEng() {
		return eng;
	}

	/**
	 * returns player's trader skill point
	 * 
	
	 * @return tra */
	public int getTra() {
		return tra;
	}

	/**
	 * returns player'ss fighter skill point
	 * 
	
	 * @return figh */
	public int getFigh() {
		return figh;
	}

	/**
	 * return player's pilot skill point
	 * 
	
	 * @return pil */
	public int getPil() {
		return pil;
	}

	/**
	 * Sets player name
	 * 
	
	 * @param name String
	 */
	public void setName(String name) {
		this.name = name;
	}

	/**
	 * Sets player's credit
	 * 
	 * @param credits
	 */
	public void setCredit(int credits) {
		this.credits = credits;
	}

	/**
	 * Sets Engineer skill point
	 * 
	 * @param eng
	 */
	public void setEngSkill(int eng) {
		this.eng = eng;
	}

	/**
	 * Sets Trader skill point
	 * 
	 * @param tra
	 */
	public void setTraSkill(int tra) {
		this.tra = tra;
	}

	/**
	 * Sets Fighter skill point
	 * 
	
	 * @param figh int
	 */
	public void setFighSkill(int figh) {
		this.figh = figh;
	}

	/**
	 * Sets P
skill point
	 * 
	 * @param pil
	 */
	public void setPilSkill(int pil) {
		this.pil = pil;
	}

	/**
	 * Method getLocation.
	 * @return Point
	 */
	public Point getLocation() {
		// TODO Auto-generated method stub
		return location;
	}

	/**
	 * Method setLocation.
	 * @param location Point
	 */
	public void setLocation(Point location) {
		// TODO Auto-generated method stub
		this.location = location;
	}

	/**
	 * Method toString
	 * @return this.toString
	 */
	public String toString(){
		return this.toString();
	}
}
